#pragma once
#include "DXAMLCommon.h"

#include "CDependencyObject.h"
namespace DirectUI
{
	enum TypeInfoFlags
	{
		tifNone = 0x0,
		tifIsCoreType = 0x1,
		tifIsPublic = 0x2,
		tifIsConstructible = 0x4,
		tifIsInterface = 0x8,
		tifIsCollection = 0x10,
		tifIsList = 0x20,
		tifIsDictionary = 0x40,
		tifIsMarkupExtension = 0x80,
		tifIsISupportInitialize = 0x100,
		tifIsNullable = 0x200,
		tifHasTypeConverter = 0x400,
		tifIsWhitespaceSignificant = 0x800,
		tifTrimSurroundingWhitespace = 0x1000,
		tifIsEnum = 0x2000,
		tifIsPrimitive = 0x4000,
	};


	//struct StaticTypeInfo
	//{
	//	int m_nIndex;
	//	unsigned int m_cName;
	//	unsigned __int16 *m_pName;
	//	int m_nNamespaceIndex;
	//	int m_nBaseTypeIndex;
	//	DirectUI::TypeInfoFlags m_flags;
	//	int (__stdcall *m_pfnCreate)(CDependencyObject *, IInspectable *, IInspectable **);
	//	int (__stdcall *m_pfnBox)(CValue *, IInspectable *, DirectUI::BoxerBuffer *);
	//	int (__stdcall *m_pfnUnbox)(CValue *, DirectUI::TypeInfo *, IInspectable **);
	//	_GUID m_riid;
	//};
};

